package cn.wolfcode.trip.base.service;

import cn.wolfcode.trip.base.domain.*;

import java.util.List;
//消息页面专用
public interface IMessageService {
    //获得用户的最新信息
    Message getMessage(Long id);
    //将用户的消息数量置为0;
    void setMessagetoNull(Long id);
    //获得用户未读的我的游记的评论
    List<UserComment> getCommentOfTravel (Long id);
    //获的用户未读的我的攻略的评论的评论
    List<UserComment> getCommentOfStrategyComment(Long id);


    //获得用户新增但未读的赞
    List<TravelLike> getTravelLikeOfNOReader(Long id);
    //获得用户新增的但未读的atme
    List<AtMe> getAtMeOfNoReader(Long id,int themeType);


    void insertAtme(String des, UserComment userComment);

    List<PrivateLetter> getLetterOfNoreader(Long id);

    void insertLetter(PrivateLetter privateLetter);

    /**
     * 将私信设置为已读
     * @param id
     */
    void setLetterToRead(Long id);
    /**
     * 将@me设置为已读
     * @param id
     */
    void setAtToRead(Long id);
    /**
     * 将评论设置为已读
     * @param id
     */
    void setCommnetToRead(Long id);

    /**
     * 将系统消息设置为已读
     */
    void setSystemMessageToReader(Long id);

    /**
     * 获得未读的系统消息
     * @param id
     * @return
     */
    List<SystemMessage> getSystemMessageOfNoreader(Long id);


    /**
     * 获得对我的历史点赞
     */
    List<UserLike> getUserLike(Long id);

    void setUserLikeToread(Long id);
}
